#ifndef HUB_H
#define HUB_H

#include <QObject>

#include "source/flow/flow.h"
#include "source/channel/channel.h"
#include "source/superheader.h"

class Hub : public QObject
{
  Q_OBJECT

private:

public:
  QVector<int> inFlows;  // список входных потоков
  QVector<int> outFlows; // список выходных потоков

  QList</*const*/ Channel *>  inChannels; // список входных каналов
  /*const*/ Channel          *outChannel; // выходной канал

  explicit Hub(QObject *parent = 0);
  void addInFlow(int flow);  // Добавление входного потока
  void addOutFlow(int flow); // Добавление выходного потока

  void addInChannel(/*const*/ Channel *channel);  // Добавление входного канала
  void setOutChannel(/*const*/ Channel *channel); // Назначить выходной канал

signals:

public slots:

};

#endif // HUB_H
